1. Technical Field
This application generally relates to data structures, and more particularly to techniques used in connection with data structures.
2. Description of Related Art
Computer systems may include different resources used by one or more host processors. Resources and host processors in a computer system may be interconnected by one or more communication connections. These resources may include, for example, data storage devices such as those included in the data storage systems manufactured by EMC Corporation. These data storage systems may be coupled to one or more host processors and provide storage services to each host processor. Multiple data storage systems from one or more different vendors may be connected and may provide common data storage for one or more host processors in a computer system.
A host processor may perform a variety of data processing tasks and operations using the data storage system. For example, a host processor may perform basic system I/O operations in connection with data requests, such as data read and write operations.
Host processor systems, also referred to as server systems, may store and retrieve data using a storage device containing a plurality of host interface units, disk drives, and disk interface units. The host systems access the storage device through a plurality of channels provided therewith. Host systems provide data and access control information through the channels to the storage device, and the storage device provides data to the host systems also through the channels. The host systems do not address the disk drives of the storage device directly, but rather, access what appears to the host systems as a plurality of logical disk units. The logical disk units may or may not correspond to the actual disk drives. Allowing multiple host systems to access the single storage device unit allows the host systems to share data stored therein.
Data regarding the configuration of one or more data storage systems may be stored in a data structure such as a binary tree. If information about an element in the tree is desired, retrieval may be performed by searching the tree structure. Searching the tree structure may include starting at the root and performing a search, such as a depth first search or a breadth first search, to locate the desired element(s) in the structure. The amount of time to locate an element of the tree structure in connection with one or more operations, such as retrieval of information, may be unacceptable as the number of elements in the tree structure continue to increase. Thus, it may be desirable to utilize an alternative data structure and associated techniques for performing operations using information stored therein.